// AudioCodec.h: interface for the CAudioCodec class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_AUDIOCODEC_H__81CFF2D5_EAD4_4052_B46C_A11ED7B957D5__INCLUDED_)
#define AFX_AUDIOCODEC_H__81CFF2D5_EAD4_4052_B46C_A11ED7B957D5__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "AVCodec.h"
class CAudioCodec  
{
public:
	CAudioCodec();
	virtual ~CAudioCodec();

	virtual int Init();
	virtual int encode(void* inbuf, int buf_size, void *data);
	virtual int decode(void* outdata, int outdata_size,void* inbuf, int inbuf_size);
	virtual int close(void* outdata, int outdata_size);
	virtual int flush();

	int GetStatus();
	int GetParam();
	int SetParam(AVCodecParam* param);



protected:
	AVCodecParam m_Param;
	AVCodecStatus m_Status;

};

#endif // !defined(AFX_AUDIOCODEC_H__81CFF2D5_EAD4_4052_B46C_A11ED7B957D5__INCLUDED_)
